Improving mechanisms for searching vast numbers of documents, such as that available via the World Wide Web (“web”), for information has increasingly been an area of focus and research. This is especially due to the continued growth in the number of computer users, services and applications offered for example on the web, and of course, the amount of information being added to the web and other databases.
A search engine or search engine program is a widely used mechanism for allowing web users to search the web for information. Typically, a search engine will provide a user interface that includes a query field. In response to a query (e.g., one or more keywords describing the desired information) a user enters into the query field, the search engine will attempt to locate, rank, sort and then return for display the search results, usually as a list of hyperlinks to relevant documents.
While some search engines are “general” (e.g., www.google.com) to the extent they allow searching the web for a relatively broad range of information which may be unrelated, others may be more specialized to a particular category of search results. Sometimes such specialized search engines are referred to as “directories”.
One example of a specialized search engine is a shopping/e-commerce search engine (e.g., http://www.froogle.com) that only returns links to web documents that include, and may facilitate the purchase of, products relevant to a user's search query. (As used herein, “products” includes goods and/or services.) Other examples of specialized search engines include without limitation news search engines, music search engines that search for music files (e.g., MP3) files, image (photo or video) search engines, advertisement (e.g., classifieds) search engines, people/personals search engines, etc. Just a few examples of specialized search engines can be found at http://www.google.com/options.
Ideally, a search engine, whether general or specialized, will provide the user with the most relevant information as quickly as possible. As mentioned, there has been an increased focus on improving the performance of search engines toward this end. For example, in a paper entitled, “The Anatomy of a Large-Scale Hypertextual Search Engine,” by Sergey Brin and Larry Page, an improved method for ranking, and thus providing better, search results is described.
Although relevancy of search results has been an area of increased focus, the manner in which search results are presented to a querying user has not. For example, in many instances, both specialized and general search engines display search results (typically hyperlinks to web documents) in much the same, widely recognized manner: that is, as a vertical list of links each displayed with a “snippet” of text meant to summarize the content corresponding to the link to aid the user in assessing the relevance of each search result.
Considering as an example a product search engine, typically several pieces of information (or “cues”) thought to help a user assess relevancy of each result may be displayed as part of each search result, including: (1) a picture, if available, of the product associated with a given search result link; (2) brief description (“snippet”) of the associated product, which may include text from the user's query, as well as the product name, model, make, features, etc.; and (3) an indication of the vendor and/or its associated web page(s)—to which there is generally also a link—from which purchase of the product can be made or otherwise facilitated. Typically, product category and price will also be included as well.
Although the de facto “list” view for displaying search results has prevailed as the only mode of output for some time in various types of search engines, it may not be suitable in some situations. For instance, a user may not want to see all the information or type of information conveyed in response to a particular search. A user of a product search engine, for example, may only need to see a picture of products associated with each search result to assess the relevancy of that result.
Unfortunately, current search engines do not provide much, if any, flexibility in the manner in which search results are output, including the amount and type of information displayed with each search result. As such, output resources (e.g., the display size of a search result page) may be wasted on information that is not useful to a user in assessing the relevancy of each result. Such information may also unnecessarily decrease a user's efficiency in assessing search results, for example, by causing the user to scroll or otherwise go through irrelevant information which can cause fewer results to be stored on each page of results.
Thus, what is needed is an improved method and system for formatting search results for output to a user that overcomes the drawbacks of conventional search engines as described above.